/*
 * @Author: 卓伊凡
 * @LastEditors: 卓伊凡
 * @email: 422108995@qq.com
 * @github: https://github.com/youyacao
 * @gitee: https://gitee.com/youyacao/
 * @Date: 2025-04-20 21:22:11
 * @LastEditTime: 2025-05-19 10:43:55
 * @motto: Still water runs deep
 * @Description: 优雅草科技卓伊凡-优雅草科技主程-兼技术总监-优雅草科技欢迎合作共赢，优雅草科技官网www.youyacao.com，感谢合作与支持，请仔细阅读优雅草科技的开源lisence文件，您可以百分百100%使用优雅草的开源产品，但是需要遵守相关规则，并且需要申明是使用了优雅草科技的产品
 * @FilePath: \youyacaoax\vite.config.js
 */
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import { resolve } from 'path'
import pxToViewport from 'postcss-px-to-viewport';
// https://vite.dev/config/
export default defineConfig({
  define: {
    'process.env': {}
  },
  plugins: [vue()],
  resolve: {
    alias: {
      '@': resolve('./src')
    }
  },
  base: './',
  css: {
    postcss: {
      plugins: [
        pxToViewport({
          unitToConvert: 'px',       // 需要转换的单位
          viewportWidth: 1920,       // 默认Web端设计稿宽度(1920)
          unitPrecision: 5,          // 转换后保留的小数位数
          propList: ['*'],           // 需要转换的属性列表，*表示所有属性
          viewportUnit: 'vw',        // 转换后的单位
          fontViewportUnit: 'vw',    // 字体使用的单位
          selectorBlackList: [],     // 不转换的选择器
          minPixelValue: 1,          // 最小转换值
          mediaQuery: true,          // 允许在媒体查询中转换
          replace: true,             // 是否直接替换值而不添加备用单位
          exclude: [/mobile\.scss$/i],        // 忽略某些moblie.scss文件
          landscape: false,          // 是否处理横屏情况 
        })
      ]
    }
  },
  server: {
    proxy: {
      '/api': {
        target: 'https://networkdemoapi.youyacao.com',
        changeOrigin: true,
        rewrite: (path) => path.replace(/^\/api/, '')
      },
      '/deepseek': {
        target: 'https://api.deepseek.com',
        changeOrigin: true,
        rewrite: (path) => path.replace(/^\/deepseek/, '')
      }
    }
  }
})
